//
//  Report.swift
//  ZhuangShiPattern
//
//  Created by mac on 2017/11/9.
//  Copyright © 2017年 RRC. All rights reserved.
//

import Foundation

//抽象成绩单
protocol SchoolReport {
    //成绩单主要展示的就是你的成绩情况
    func report()
    //成绩单要家长签字，这个是最要命的
    func sign(name:String)
}

//四年级成绩单
public class FouthGradeSchoolReport:SchoolReport{
    //我的成绩单
    func report() {
        //成绩单的格式是这个样子的
        print("尊敬的xxx家长：")
        print("..........")
        print("语文62 数学65 体育98 自然63")
        print(".........")
        print("      家长签名：")
    }
    
    //家长签名
    func sign(name:String) {
        print("家长签名："+name)
    }
    
}

//修饰成绩单
public class SugarFouthGradeSchoolReport:FouthGradeSchoolReport{
    //首先要定义你要美化的方法
    private func reportHighScore(){
        print("这次考试语文最高是75, 数学是78, 自然是80")
    }
    //在老爸看完成绩单后，我再汇报学校的排名情况
    private func reportSort(){
        print("我是排名第38名...")
    }
    //由于汇报的内容已经发生变更，那所以要重写父类
    override func report() {
        self.reportHighScore()//先说最高成绩
        super.report()//然后老爸看成绩单
        self.reportSort()//然后告诉老爸学习学校排名
    }
}
